package net.csdn.business.common.annotation;

import net.csdn.business.common.constant.AuditConstants;
import net.csdn.business.common.constant.CommonConstants;
import net.csdn.business.common.enums.AuditEnum;

import java.lang.annotation.*;

/**
 * @author likun
 * @date 2022/6/30 23:44
 */
@Documented
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface AuditStatusCheck {
    /**
     * 审核状态字段名称
     *
     * @return String
     */
    String statusFieldName() default AuditConstants.FIELD_BEAN_AUDIT_STATUS;

    /**
     * 用户ID字段名称
     *
     * @return String
     */
    String userIdFieldName() default CommonConstants.FIELD_UID;

    /**
     * 简单处理 按照JSONObject、JSONArray处理
     *
     * @return Class
     */
    AuditEnum.DataTypeEnum resourceType() default AuditEnum.DataTypeEnum.JSON_OBJECT;
}